package controller.design_mode_09_decorator;

/**
 * ***********************************************************
 *
 * @类名 : controller.design_mode_09_decorator.类名
 * @DESCRIPTION : 这家伙太懒啥都没写
 * @AUTHOR :  一个风情万种的男子
 * @DATE : 2016/4/21
 * ***********************************************************
 */
public abstract class Decorator extends Product {
    //这里传递的是被修饰者，正真的对象
    private Product product = null;

    /**
     * 通过构造方法传递被修饰者
     * @param product
     */
    public Decorator(Product product) {
        this.product = product;
    }
    /**
     * 委托给被修饰者执行
     */
    @Override
    public void doSomething() {
        this.product.doSomething();
    }


}
